package cn.yd.rb.controller;

import java.io.FileNotFoundException;
import java.io.IOException;

import org.csource.common.MyException;
import org.csource.fastdfs.ClientGlobal;
import org.csource.fastdfs.StorageClient;
import org.csource.fastdfs.StorageServer;
import org.csource.fastdfs.TrackerClient;
import org.csource.fastdfs.TrackerServer;
import org.junit.Test;

public class FastdfsTest {

	@Test
	public void testUpload() throws FileNotFoundException, IOException, MyException{
		//1 把FastDFS提供的jar包添加到工程中（已经完成）
		//2 初始化全局配置。加载一个配置文件（就是找到tracker服务器的地址）
		ClientGlobal.init("D:\\IntelliJ IDEA 2018.3.1 project\\novelreading\\src\\main\\resources\\client.conf");
		
		//3 创建一个TrackerClient对象。
		TrackerClient trackerClient = new TrackerClient();
		
		//4 创建一个TrackerServer对象。
		TrackerServer trackerServer = trackerClient.getConnection();
		
		//5 声明一个StorageServer对象，null
		StorageServer storageServer = null;
		
		//6 获得StroageClient对象。
		StorageClient storageClient = new StorageClient(trackerServer,storageServer);
		
		//7 直接调用StroageClient对象的方法上传文件即可。
		/*
		 * 参数1：上传文件的路径	参数2：上传文件扩展名（不要.） 参数3：附加的属性（null就行）
		 * */
		String[] string = storageClient.upload_appender_file("d:\\123.jpg", "jpg", null);
		
		for (String string2 : string) {
			System.out.println(string2);


			
		}
		
	}
	@Test
	//利用工具类进行图片上传（比上面不用工具类简单很多）
	public void testFastDfsClient() throws Exception{
		//实例化工具类，得到其对象
		FastDFSClient Client = new FastDFSClient("D:\\IntelliJ IDEA 2018.3.1 project\\novelreading\\src\\main\\resources\\client.conf");
		
		//直接上传
		String str = Client.uploadFile("d:\\123.txt","txt");
		
		System.out.println(str);
	}
}
